For introspection scanning which ends up calling class_init() which in
turn calls into the keybindings code, we can just use the fallback
keyval conversion code.
https://bugzilla.gnome.org/show_bug.cgi?id=696457
allowed_backends = g_strdup (backends);
}
+static GdkDisplayManager *manager = NULL;
+
/**
* gdk_display_manager_get:
*
GdkDisplayManager*
gdk_display_manager_get (void)
{
- static GdkDisplayManager *manager = NULL;
-
if (manager == NULL)
{
const gchar *backend_list;
return manager;
}
+/* Used for cases where we don't actually want to instantiate a
+ * display manager if none exists. Internal only.
+ */
+GdkDisplayManager *
+_gdk_display_manager_get_nocreate (void)
+{
+ return manager;
+}
+
/**
* gdk_display_manager_get_default_display:
* @manager: a #GdkDisplayManager
GdkDisplay *display);
};
+GdkDisplayManager *
+_gdk_display_manager_get_nocreate (void);
+
G_END_DECLS
#endif
guint *lower,
guint *upper)
{
- GdkDisplayManager *manager = gdk_display_manager_get ();
+ GdkDisplayManager *manager = _gdk_display_manager_get_nocreate ();
- GDK_DISPLAY_MANAGER_GET_CLASS (manager)->keyval_convert_case (manager, symbol, lower, upper);
+ if (manager)
+ GDK_DISPLAY_MANAGER_GET_CLASS (manager)->keyval_convert_case (manager, symbol, lower, upper);
+ else
+ _gdk_display_manager_real_keyval_convert_case (NULL, symbol, lower, upper);
}
/**